<!--
 * @Author: zhangmengqiong
 * @Date: 2021-05-12 14:18:00
 * @LastEditors: zhangmengqiong
 * @LastEditTime: 2021-05-12 15:58:52
-->
<!DOCTYPE html>
<html>
  <head>
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <script
      type="text/javascript"
      src="https://api.map.baidu.com/api?v=1.0&type=webgl&ak=DVPI4kwxgMqXDrTx483rHkB7c3KDRyPp"
    ></script>
    <title>百度地图</title>
    <style type="text/css">
      html {
        width: 100%;
        height: 100%;
      }
      body {
        width: 100%;
        height: 100%;
        margin: 0px;
        padding: 0px;
      }
      #container {
        width: 100%;
        height: 100%;
      }
    </style>
  </head>

  <body>
    <div id="container"></div>
    <script type="text/javascript">
      // 3.0 创建地图实例时，通过opts方式设置地图允许的最大最小级别
      var map = new BMapGL.Map('container', {
        minZoom: 5,
        maxZoom: 20,
      });
      // 创建地图实例
      var point = new BMapGL.Point(116.404, 39.915);
      // 创建点坐标
      map.centerAndZoom(point, 15);
      // 通过滚轮进行放大缩小
      map.enableScrollWheelZoom(true);
      // 初始化地图，设置中心点坐标和地图级别
      // 添加控件
      // 设置最大缩放和缩小
      // 1. 通过方法方式设置地图允许的最大最小级别，3.0取消这个属性了
      // map.setMinZoom(4);
      // map.setMaxZoom(20);
      // 3.0 改成option 传参
      var scaleCtrl = new BMapGL.ScaleControl({
        anchor: BMAP_ANCHOR_TOP_LEFT, // 控制方向和位置
      }); // 添加比例尺控件
      map.addControl(scaleCtrl);
      var zoomCtrl = new BMapGL.ZoomControl({
        // 将缩放控件位置调整到左下方
        anchor: BMAP_ANCHOR_BOTTOM_LEFT,
        // 位置移动,第一个参数是x轴 第二个参数是y轴
        offset: new BMapGL.Size(100, 100),
      }); // 添加缩放控件
      map.addControl(zoomCtrl);
      // 地图事件
      map.addEventListener('zoomstart', function (e) {
        console.log(map.getZoom());
      });
      map.addEventListener('zoomend', function (e) {
        console.log(map.getZoom());
      });
    </script>
  </body>
</html>
